Conventionally, SAN (Storage Area Network), where one or more host computers (hereinafter called hosts) and one or more storage devices are connected via a network, is known as a mode of connection between hosts and storage devices.
In comparison with DAS (Direct Attached Storage) that is a one-to-one direct connection between a host and a storage device, SAN allows multiple hosts to share the resources of one storage device or to distribute storage areas among multiple storage devices, giving the user an advantage of flexible resource usage in that accesses to, or the load of, storage devices can be distributed or in that a data loss risk can be reduced.
When multiple storage areas are distributed among multiple storage devices, the effect achieved by distributing the accesses to, and the load of, storage devices or by reducing the data loss risks at a failure time depends largely on which storage device's resources the storage areas are allocated.
Especially, in a system where new storage area allocations are sequentially requested, the optimum storage area layout cannot be designed in advance. So, in comparison with a system where all layout storage areas to be arranged are determined in advance it is difficult to determine to which storage device a new storage area, requested by each request, is to be allocated.
Non-Patent Document 1 discloses a method for determining an area which is on one of multiple storage devices and to which a new storage area is to be allocated. In this method, the storage device on which the new storage area is to be allocated is determined using the free storage capacity (allocatable capacity) or the free capacity ratio of each storage device as a measure of whether the storage area can be allocated thereon.
Some storage devices provide not only the storage capacity but also more sophisticated functions.
For example, the known sophisticated functions are:
the function to reduce the data loss risk and increase the data transfer speed by RAID(Redundant Arrays of Inexpensive Disks) in which multiple hard disk drives (hereinafter abbreviated as HDD) are used as logical storage areas, and
the function to create replications in the same storage device or another storage device.
Another point is a difference in the storage device specifications among storage devices such as the type of HDDs included in a storage device or the standard for the corresponding network interface.
So, the allocation of a storage area requires a consideration not only for the storage capacity but also for the function and the specifications of the storage device according to the required performance and reliability.
A known method for allocating a storage area is that, with the allocation-time conditions defined as a policy, the storage area is allocated according to the policy.
For example, Patent Document 1 describes a method of allocating storage areas to RAID groups. In this method, RAID groups are created in storage in advance for different conditions such as different HDD performances and different RAID levels and policies are defined for those RAID groups. In response to a storage area allocation request corresponding to a policy, a storage area is allocated to a RAID group corresponding to the requested policy.
In the method described in Patent Document 1, when storage areas are allocated to all areas of the RAID group corresponding to a policy, a new RAID group must be created for the policy to maintain the correspondence between RAID groups and policies.
A storage area allocation method using the free capacity or the free capacity ratio as a measure, such as the method described in Non-Patent Document 1, can be used in the policy-based storage area allocation method as a method for determining a storage device to which a RAID group corresponding to a policy is to be newly allocated.    [Non-Patent Document 1] Arata Ejiri, Mitsuhiko Ohta, Toru Yokohata “Development of distributed autonomous storage system” Technical Report of IEICE, DE2004-71, pp. 135-140, 2004    [Patent Document 1] Japanese Patent Publication Kokai JP-A No. 2002-222061
The following analyses are given by the present invention.
If a storage device in which a storage area is allocated is determined based on the allocatable capacity or the free capacity ratio of a requested policy when multiple policies are defined, a problem arises that the resources allocatable to other policies are consumed with the result that the resources cannot be fully utilized.
The above mentioned problem will be described with reference to FIGS. 20A to 20D. There are two storage devices: a storage device 1a having four HDDs (141aa, 141ab, 141ac, 141ad) and a storage device 1b having six HDDs (141ba, 141bb, 141bc, 141bd, 141be, 141bf). Assume that RAID1 is defined as policy 1 and that RAID5(5+P) (RAID is composed of 6 HDDs where the parity of the data striped on 5 HDDs is stored on another one HDD) is defined as policy 2.
Also assume that each HDD has the capacity of 100 GB.
FIGS. 20A and 20B show that storage areas are allocated neither on the HDDs in the storage device 1a nor on the HDDs in the storage device 1b. 
At this time, when a storage area allocation request (request 1) of “policy 1, 100 GB” is received, the 200 GB of logical capacity can be allocated on the storage device 1a for policy 1 with RAID1 of 100 GB configured, for example, by each of the combination of HDD 141aa and HDD 141ab and the combination of HDD 141ac and HDD 141ad. Similarly, the 300 GB of logical capacity can be allocated on the storage device 1b with RAID1 of 100 GB configured, for example, by each of the combination of HDD 141ba and HDD 141bb, the combination of HDD 141bc and HDD 141bd, and the combination of HDD 141be and HDD 141bf. In this case, because the allocatable capacity of the storage device 1b is larger, RAID1 is built on the storage device 1b for allocating the storage area.
FIGS. 20C and 20D show the storage devices 1a and 1b in which 100 GB of logical capacity is allocated by building RAID1 (RAID 142ba) by the HDD 1411ba and HDD 141bb. 
Next, when a storage area allocation request (request 2) of “policy 2, 500 GB” is received after the 100 GB of logical storage was allocated as described above, the requested storage area cannot be allocated because neither the storage device 1a nor the storage device 1b has unallocated HDDs on which RAID5(5+P) can be built.
In this case, however, if the storage device 1a was allocated to request 1, request 2 could be allocated to the storage device 1b. So, this condition indicates that the resources of the HDD 141 are not fully utilized.
As described above, in case there are multiple policies for storage area allocation and storage area allocation requests are issued one after another, a storage area cannot sometimes be allocated to a request in spite of the fact that a storage area could be allocated to that request if an earlier allocation request was allocated to some other resources. The reason is that the resources, which are allocable for one policy, are already used for another policy at the resource allocation time of the another policy.